/* Quest history must remain readable regardless of the number of entries. */
#questJournalModal > .modal__content--quest-journal {
  display: flex;
  flex-direction: column;
  width: min(1060px, calc(100vw - 24px));
  height: min(880px, calc(100dvh - 24px)) !important;
  max-height: calc(100dvh - 24px) !important;
  min-height: 0 !important;
  padding: clamp(12px, 2vw, 24px);
  overflow: hidden !important;
  zoom: 1 !important;
  transform: none !important;
}
#questJournalModal .section-heading,
#questJournalModal .quest-tabs,
#questJournalModal .quest-schedule-panel { flex: 0 0 auto; }
#questJournalModal .section-heading { margin-bottom: 12px; }
#questJournalModal .quest-tabs { margin: 10px 0; }
#questJournalModal #questJournalList {
  flex: 1 1 auto;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: var(--accent) transparent;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: max-content;
  align-content: start;
  align-items: start;
  padding-right: 6px;
  padding-bottom: 12px;
}
#questJournalModal #questJournalList::-webkit-scrollbar { display: block; width: 6px; }
#questJournalModal #questJournalList::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 4px; }
#questJournalModal .quest-card { min-width: 0; gap: 12px; overflow-wrap: anywhere; }
#questJournalModal .quest-card p,
#questJournalModal .quest-objectives { font-size: .9rem; line-height: 1.5; }
#questJournalModal .quest-card h3 { font-size: 1rem; line-height: 1.35; }
#questJournalModal .quest-card .eyebrow { font-size: .65rem; }
#questJournalModal .quest-card__heading { flex-wrap: wrap; }
#questJournalModal .quest-objectives strong { flex-shrink: 0; }
#questJournalModal .quest-tab,
#questJournalModal #closeQuestJournalButton { min-height: 44px; font-size: .9rem; }
#questJournalModal #questJournalList > details,
#questJournalModal #questJournalList > .empty-state { grid-column: 1 / -1; }
@media (max-width: 760px) {
  #questJournalModal #questJournalList { grid-template-columns: minmax(0, 1fr); }
  #questJournalModal .quest-card { padding: 12px; }
  #questJournalModal .quest-npc-profile { align-items: start; }
}
@media (max-height: 500px) {
  #questJournalModal .quest-schedule-panel { padding: 6px 10px; margin: 0; }
  #questJournalModal .section-heading { margin-bottom: 4px; }
  #questJournalModal .quest-tabs { margin: 4px 0; }
}
